using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("ClientLocationManager")]
	public class ClientLocationManager : MonoBehaviour
	{
		public LocationServices m_locationServices => method_3<LocationServices>("m_locationServices");

		public WifiInfo m_wifiInfo => method_3<WifiInfo>("m_wifiInfo");

		public bool m_requestingGPSData => method_2<bool>("m_requestingGPSData");

		public bool m_requestingWifiData => method_2<bool>("m_requestingWifiData");

		public float m_scanTimeout => method_2<float>("m_scanTimeout");

		public bool m_GPSCheatOn => method_2<bool>("m_GPSCheatOn");

		public bool m_GPSCheatGPSEnabled => method_2<bool>("m_GPSCheatGPSEnabled");

		public bool m_WifiCheatOn => method_2<bool>("m_WifiCheatOn");

		public bool m_WifiCheatWifiEnabled => method_2<bool>("m_WifiCheatWifiEnabled");

		public static string WIFI_CHEAT_NETWORK_NAME => MonoClass.smethod_8(TritonHs.MainAssemblyPath, "", "ClientLocationManager", "WIFI_CHEAT_NETWORK_NAME");

		public bool GPSServicesReady => method_11<bool>("get_GPSServicesReady", Array.Empty<object>());

		public bool GPSServicesEnabled => method_11<bool>("get_GPSServicesEnabled", Array.Empty<object>());

		public bool WifiEnabled => method_11<bool>("get_WifiEnabled", Array.Empty<object>());

		public string GetWifiSSID => method_13("get_GetWifiSSID");

		public bool GPSAvailable => method_11<bool>("get_GPSAvailable", Array.Empty<object>());

		public bool GPSOrWifiServicesAvailable => method_11<bool>("get_GPSOrWifiServicesAvailable", Array.Empty<object>());

		public ClientLocationManager(IntPtr address, string className)
			: base(address, className)
		{
		}

		public ClientLocationManager(IntPtr address)
			: this(address, "ClientLocationManager")
		{
		}

		public static ClientLocationManager Get()
		{
			return MonoClass.smethod_15<ClientLocationManager>(TritonHs.MainAssemblyPath, "", "ClientLocationManager", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void StopRequestingData()
		{
			method_8("StopRequestingData");
		}

		public void StopRequestingGPSData()
		{
			method_8("StopRequestingGPSData");
		}

		public void stopRequestingWifiData()
		{
			method_8("stopRequestingWifiData");
		}

		public ClientLocationData GetBestLocationData()
		{
			return method_14<ClientLocationData>("GetBestLocationData", Array.Empty<object>());
		}

		public bool IsRequestingGPSData()
		{
			return method_11<bool>("IsRequestingGPSData", Array.Empty<object>());
		}

		public bool IsRequestingWifiData()
		{
			return method_11<bool>("IsRequestingWifiData", Array.Empty<object>());
		}

		public void Cheat_SetGPSEnabled(bool on)
		{
			method_8("Cheat_SetGPSEnabled", on);
		}

		public void Cheat_SetWifiEnabled(bool on)
		{
			method_8("Cheat_SetWifiEnabled", on);
		}
	}
}
